package com.jic.order.request;

import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.math.BigDecimal;
import lombok.Data;

@Data
public class CreateSpikeOrderRequest implements Serializable {


	@ApiModelProperty(notes = "订单备注",required = true)
	private String mark;

	@ApiModelProperty(notes = "物流总费",required = true)
	private BigDecimal expressTotalFee;
	@ApiModelProperty(notes = "实付总金额，实付总金额=购买总金额+物流总费",required = true)
	private BigDecimal actualPayTotalAmount;
	@ApiModelProperty(notes = "商品ID",required = true)
	private Long mpId;
	@ApiModelProperty(notes = "时间段编码",required = true)
	private String timeId;
	@ApiModelProperty(notes = "活动ID",required = true)
	private String promotionId;
	@ApiModelProperty(notes = "活动类型 类型:1单一促销,2满量促销,3满额促销,4秒杀,5赠送类促销,6组合促销7.单品X件优惠,8换购,9预售,11优惠券",required = true)
	private Integer promotionType;

	@ApiModelProperty(notes = "优惠总金额，优惠总金额=销售总金额-购买总金额",required = true)
	private BigDecimal discountTotalAmount;
	@ApiModelProperty(notes = "购买总金额，购买总金额=销售总金额-优惠总金额",required = true)
	private BigDecimal buyTotalAmount;

	@ApiModelProperty(notes = "token",required = true)
	private String token;
	@ApiModelProperty(notes = "请求流水号，防重复提交的")
	private String serialNo;

	// 校验秒杀商品

	@ApiModelProperty(notes = "团购ID")
	private String groupId;

	// 1.创建父订单
	@ApiModelProperty(notes = "购买人的用户id")
	private long buyerId;
	@ApiModelProperty(notes = "购买人的用户名")
	private String buyerUsername;
	@ApiModelProperty(notes = "'购买人真实名称'")
	private String buyerRealname;
	@ApiModelProperty(notes = "收货人省id")
	private long receiverProvinceId;
	@ApiModelProperty(notes = "收货人省名称")
	private String receiverProvinceName;
	@ApiModelProperty(notes = "收货人市id")
	private long receiverCityId;
	@ApiModelProperty(notes = "收货人市名称")
	private String receiverCityName;
	@ApiModelProperty(notes = "收货人区/县id")
	private long receiverCountryId;
	@ApiModelProperty(notes = "收货人区/县名称")
	private String receiverRegionName;
	@ApiModelProperty(notes = "收货人名字")
	private String receiverName;
	@ApiModelProperty(notes = "收货人电话")
	private String receiverPhone;
	@ApiModelProperty(notes = "收货人详细地址")
	private String receiverAddress;
	@ApiModelProperty(notes = "销售总金额")
	private BigDecimal saleTotalAmount;

	@ApiModelProperty(notes = "销售渠道，对应枚举com.jic.order.enums.SaleChannelEnum")
	private Integer saleChannel;


	// 2.创建子订单
	@ApiModelProperty(notes = "0 代表普通下单 1代表代客下单")
	private Integer orderType;

}
